/**
 * @file:  AppUtils.java
 * @author: liang_xiaojian
 * @date:   2020/8/26 14:45
 * @copyright: 2020-2023 www.bosssoft.com.cn Inc. All rights reserved.
 */
package com.bosssoft.usercenter.utils;

import com.bosssoft.usercenter.pojo.vo.CommonResponse;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

import javax.annotation.PostConstruct;
/**
 * @Class AppUtils
 * @Description 应用程序相关的工具方法定义在这里，例如版本获取，全部应答报文设置等
 * @Author Administrator
 * @Date 2023-04-13  14:03
 * @version 1.0.0
 */
@Component
public class AppUtils {

    private AppUtils() {
        // prevent construct
    }

    /**
     * 从配置文件获取后端的程序版本
     */
    @Value("${app.version}")
    private String version;
    /**
     * 存储后端程序版本
     */
    private static String myVersion;

    @PostConstruct
    public void init() {
        AppUtils.myVersion = version;
    }

    /**
     *  对统一应答设置版本
     * @param commonResponse 统一应答
     * @param <T>
     */
    public static <T> void setResponseExtendInfo(CommonResponse<T> commonResponse) {
        commonResponse.getHead().setVersion(myVersion);
    }
}
